package com.qianda.qdminiapp.domain.model.order;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author cw
 * @since 2019-08-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("`ORDER`")
public class Order extends Model<Order> {

    private static final long serialVersionUID = 1L;

    /**
     * 订单id(特定编码)
     */
    @TableId("ORDER_ID")
    private String orderId;

    /**
     * 订单的用户id
     */
    @TableField("ORDER_USER_ID")
    private String orderUserId;

    @TableField("ORDER_MONEY")
    private BigDecimal orderMoney;

    /**
     * 订单的类型
     */
    @TableField("ORDER_TYPE_DICT_ID")
    private Integer orderTypeDictId;

    /**
     * 订单创建时间
     */
    @TableField("CREATE_TIME")
    private String createTime;

    /**
     * 订单支付时间
     */
    @TableField("PAY_TIME")
    private String payTime;

    /**
     * 订单状态-关联字典表
     */
    @TableField("ORDER_STATUS")
    private Integer orderStatus;

    /**
     * 订单的设备id
     */
    @TableField("ORDER_DEVICE_ID")
    private Integer orderDeviceId;

    /**
     * 订单是用户申请类型-申请的id
     */
    @TableField("ORDER_APPLICATION_ID")
    private String orderApplicationId;

    /**
     * 订单内容
     */
    @TableField("ORDER_BODY")
    private String orderBody;

    /**
     * 毛巾长度
     */
    @TableField("ORDER_DEVICE_LENGTH")
    private Integer orderDeviceLength;

    /**
     * SJJ是否加热(0常温,1加热）
     */
    @TableField("ORDER_DEVICE_HEAT")
    private Integer orderDeviceHeat;

    /**
     * SJJ毛巾湿度（0~9）
     */
    @TableField("ORDER_DEVICE_WATER")
    private Integer orderDeviceWater;

    /**
     * 提成来源的订单号
     */
    @TableField("ORDER_PAYORDERID")
    private String orderPayorderid;

    @TableField("ORDER_USED_COUNT")
    private Integer orderUsedCount;

    @TableField("ORDER_SET_CHECK")
    private Integer orderSetCheck;

    @TableField("ORDER_DASHI_CHECK")
    private Integer orderDashiCheck;

    private Integer orderTowelCount;

    private Integer uploadToTrade;

    @TableField("ORDER_OUT_TOWEL_STATUS")
    private Integer orderOutTowelStatus;

    @Override
    protected Serializable pkVal() {
        return this.orderId;
    }

}
